//
//  SCBaseViewController.h
//  SCFoundationKit
//
//  Created by Chao Sheng on 2023/10/23.
//

#import <UIKit/UIKit.h>

NS_ASSUME_NONNULL_BEGIN

typedef NS_ENUM(NSUInteger,SCNavBarItemType){
    SCNavBarItemTypeImage, //图片
    SCNavBarItemTypeText,  //纯文字
    SCNavBarItemTypeCustom //自定义
};

typedef NS_ENUM(NSUInteger,SCNavBarItemPosition){
    SCNavBarItemLeft, //左侧
    SCNavBarItemRight //右侧
};

@interface SCBaseViewController : UIViewController

/// present跳转
- (void)sc_present:(UIViewController*)vc;

#pragma mark - 导航栏设置，系统导航栏
/// 返回
- (void)addBackLeftItem;

/// 返回(带文字)
- (void)addBackLeftItemWithTitle:(NSString*)title;

/// type如果是图片或者文字，content直接传string类型;
/// type自定义则传自定义视图
- (void)addSCNaviItemType:(NSArray*)types
                  Content:(NSArray*)contents
                 Position:(SCNavBarItemPosition)position
                ClickItem:(void(^)(NSInteger index))clickBlock;
/// 设置导航栏透明度
- (void)setNaviAttributeTranslucent:(BOOL)translucent;

#pragma mark - 导航栏设置，自定义导航栏；如果调用自定义导航栏，setupCustomNavBar要最先调用，之后再调用addBackLeftItem...等方法
/// 创建NavBar
- (void)setupCustomNavBar;

/// 是否是自定义导航栏
@property (nonatomic, assign, readonly) BOOL isCustomNavBar;

/// 自定义导航栏是否隐藏
@property (nonatomic, assign, readonly) BOOL customNavBarHidden;

/// 自定义导航栏，布局时其他视图的顶部以navBar的底部为参考系
@property (nonatomic, strong, readonly) UIImageView *navBar;


@end

NS_ASSUME_NONNULL_END
